

.week-calendar {
	font-size: 14px;
	font-family: arial, helvetica;
}

.week-calendar-controls {
	padding: 10px;
	text-align: center;
	margin-top: 15px;
}

.week-calendar-controls select {
	width: 300px;
	float: left;
}

.week-calendar-controls input {
	height: 35px;
	width: 100px;
	font-size: 20px;
	text-decoration: underline;
}

.week-calendar-controls button {
	margin: 0 0.5em;
}


.week-calendar table {
	border-collapse: collapse;
    border-spacing: 0;
}
.week-calendar table td {
	margin: 0;
	padding: 0;
}

.week-calendar-header {
	background: #eee;
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	width: 100%;
}

.week-calendar-header .time-column-header {
	width: 5%;
}

.week-calendar-header .scrollbar-shim {
	width: 16px;
}

.week-calendar-header .day-column-header {
	text-align: center;
	padding: 0.4em;
}
.week-calendar-header td {
	background-color: #CFCFCF;
	color:#2F3C5F;
}

.grid-timeslot-header {
	width: 6%;
	background: #eee;
}



.calendar-scrollable-grid {
	overflow: auto;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	position: relative;
	background-color: #fff;
	width: 100%;
	height: 0px; /** 20 each plus 2 for padding set in javascript**/
}


table.week-calendar-time-slots {
	width: 100%;
	table-layout: fixed;
	cursor: default;
}

.week-calendar-time-slots .day-column {
	width: 13.5%;
	border-left: 1px solid #ddd;
	overflow: visible;
	vertical-align: top;
}

.week-calendar-time-slots .day-column-inner {
	width: 100%;
	position:relative;
}

.time-slot-wrapper {
	position:relative;
	height: 1px;
	top: 1px;
}

.time-slots {
	position: absolute;
	width: 100%;
}


.time-header-cell {
	padding: 5px;
	height: 80px; /* reference height */
}


.time-slot {
	border-bottom: 1px dotted #ddd;
}

.time-slot-unavailable {
	/* border:1px solid #AFAFAF; */
	border:1px dotted #AFAFAF;
	background-color:#EDEDED;
	border-collapse:collapse;
	cursor:not-allowed;
}

.time-slot-available {
	/* border:1px solid #0EEF17; */
	border:1px dotted #0EEF17;
	background-color:#AFFFB2;
	border-collapse:collapse;
	cursor:pointer;
	text-align:center;
	font-weight:bold;
}

.time-slot-available:hover {
	border:1px solid #0EEF17;
	background-color:#40CF46;
}

.time-slot-full {
	border:1px solid #EF3B3B;
	background-color:#FF9F9F;
}

.hour-header {
	text-align: right;
}

.hour-end, .hour-header {
	border-bottom: 1px solid #ccc;
	color: #555;
}

.business-hours {
	background-color: #E6EEF1;
	border-bottom: 1px solid #ccc;
	color: #333;
	font-size: 1.4em;
}

.business-hours .am-pm {
	font-size: 0.6em;
}

.day-header-cell {
	text-align: center;
	vertical-align: middle;
	padding: 5px;
}



.time-slot-header .header-cell {
	text-align: right;
	padding-right: 10px;
}

.week-calendar-header .today  {
	font-weight: bold;
}

.week-calendar-time-slots .today {
	background-color: #ffffcc;
}


.cal-event {
	background-color: #68a1e5;
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	-khtml-opacity: 0.8;
	opacity: 0.8;
	position: absolute;
	text-align: center;
	overflow: hidden;
	cursor: pointer;
	color: #fff;
	width: 100%;
	display: none;
}


.cal-event div {
	padding: 0 5px;

}

.cal-event .time {
	background-color: #2b72d0;
	border: 1px solid #1b62c0;
	color: #fff;
	padding: 0;
	font-weight: bold;
	cursor: move;
	margin: 1px;
}

.week-calendar-drilldown {
	z-index: 100;
	position:absolute;
	border: 1px solid #000;
	background-color: #DFDFDF;
	padding: 10px;
	width: 200px;
	background-color:#fff;
}

.week-calendar-drilldown-close {
	font-family: courier;
	margin:0px;
	padding:0px;
	line-height: 90%;
	font-size:16px;
	font-weight:bold;
	height:14px;
	width:14px;
	text-align:center;
	position: relative;
	float:right;
	right: -5px;
	top: -10px;
	color:red;
	cursor:pointer;
	border: 1px solid #fff;
}

.week-calendar-drilldown-close:hover {
	background-color: #FFF0EF;
	border: 1px solid #FFD2CF;
}

.week-calendar-drilldown-header {
	font-weight:bold;
	text-align:center;
	margin-bottom:5px;
	color:#2F3C5F;
}

.week-calendar-drilldown-item {
	border: 1px solid #AFAFAF;
	padding: 2px;
	font-weight:normal;
	text-align:left;
	cursor:pointer;
}

.week-calendar-drilldown-item:hover {
	border-bottom: 1px solid #AFAFAF;
	background-color: #40CF46;
	padding: 2px;
}